﻿Перем юТест;
Перем ИмяФайла;
 
Функция ПолучитьСписокТестов(ЮнитТестирование) Экспорт
 	
 	юТест = ЮнитТестирование;
 	
 	ВсеТесты = Новый Массив;
 	
 	ВсеТесты.Добавить("ТестДолжен_ПолучитьИмяВременногоФайла");
 	ВсеТесты.Добавить("ТестДолжен_ПолучитьИмяВременногоФайлаСПустымРасширением");
 	ВсеТесты.Добавить("ТестДолжен_ПолучитьИмяВременногоФайлаСПустымРасширением_НеЗадаваяПараметра");
 	ВсеТесты.Добавить("ТестДолжен_СоздатьВременныйФайлАЗатемУдалить");
 	ВсеТесты.Добавить("ТестДолжен_УдалитьВременныеФайлыЕслиНеПолучалиИмениВременногоФайла");
 	
 	Возврат ВсеТесты;
 	
КонецФункции
 
Процедура ПередЗапускомТеста() Экспорт
КонецПроцедуры
 
Процедура ПослеЗапускаТеста() Экспорт
КонецПроцедуры
 
Процедура ТестДолжен_ПолучитьИмяВременногоФайлаСПустымРасширением() Экспорт
	ИмяФайла = ПолучитьИмяВременногоФайла("");
	юТест.ПроверитьНеравенство("", ИмяФайла);
КонецПроцедуры

Процедура ТестДолжен_ПолучитьИмяВременногоФайлаСПустымРасширением_НеЗадаваяПараметра() Экспорт
	ИмяФайла = ПолучитьИмяВременногоФайла();
	юТест.ПроверитьНеравенство("", ИмяФайла);
КонецПроцедуры
 
Процедура ТестДолжен_ПолучитьИмяВременногоФайла() Экспорт
 	ИмяФайла = юТест.ИмяВременногоФайла();
	ПроверитьОтсутствиеФайла(ИмяФайла);
КонецПроцедуры

Процедура ТестДолжен_СоздатьВременныйФайлАЗатемУдалить() Экспорт
 	ИмяФайла = юТест.ИмяВременногоФайла();
	ПроверитьОтсутствиеФайла(ИмяФайла);

	Текст = Новый ЗаписьТекста(ИмяФайла);
	Текст.ЗаписатьСтроку("вып");
	Текст.Закрыть();
	ПроверитьСуществованиеФайла(ИмяФайла);
	
	юТест.УдалитьВременныеФайлы();
	ПроверитьОтсутствиеФайла(ИмяФайла);
КонецПроцедуры

Процедура ТестДолжен_УдалитьВременныеФайлыЕслиНеПолучалиИмениВременногоФайла() Экспорт
	юТест.УдалитьВременныеФайлы();
КонецПроцедуры

Функция ПроверитьСуществованиеФайла(Имя)
	юТест.Проверить(ЗначениеЗаполнено(Имя) И (Новый Файл(Имя)).Существует(), "Файл должен существовать, а его нет "+Имя);
КонецФункции

Функция ПроверитьОтсутствиеФайла(Имя)
	юТест.Проверить(ЗначениеЗаполнено(Имя) ИЛИ Не (Новый Файл(Имя)).Существует(), "Файл не должен существовать, а он есть "+Имя);
КонецФункции
